package Demo08.Demo0823;
//这一节是关于 对前面的复习的


public class Review {
    public static void main(String[] args) {
        //编写程序数一下 1到 100 的所有整数中出现多少个数字9
        /*   int count = 0;//计数器
        for (int i = 0; i < 100; i++) {
            if(i / 10 == 9){
                count++;
            }
            if(i % 10 == 9){
                count++;
            }
        }
        System.out.println("数字9共出现" + count + "次");*/
        //打印 1 - 100 之间所有的素数
       /* for (int i = 0; i < 100; i++) {
            if(sushu(i)){
                System.out.println( i + "是一个素数");
            }
        }*/
        //求两个正整数的最大公约数
        /*求两个正整数的最大公约数(PS:这一部分之前通过遍历的方式从一到顶部完完全全试了一遍，这一次的话用辗转相除法)
        辗转相减法（求最大公约数），即尼考曼彻斯法，其特色是做一系列减法，从而求得最大公约数。例如 ：两个自然数35和14，用大数减去小数，
       (35,14)->(21,14)->(7,14)，此时，7小于14，要做一次交换，把14作为被减数，
         即(14,7)->(7,7)，再做一次相减，结果为0，这样也就求出了最大公约数7 */
        /*   Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();;
        int b = sc.nextInt();
        int max = a > b ? a : b;
        int min = a > b ? b : a;
        while(max - min != 0){
            int tmp = max - min;
            max = tmp > min ? tmp : min;
            min = tmp > min ? min : tmp;
        }
        System.out.println("最大公约数是" + max);*/
        // 模拟登陆
        /*编写代码模拟三次密码输入的场景。 最多能输入三次密码，密码正确，提示“登录成功”,密码错误，
        可以重新输入，最多输入三次。三次均错，则提示退出程序*/
       /* int key = 123;
        int count = 1; //记录输入次数
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入密码：");
        while(sc.hasNext()){
                if(key == sc.nextInt()){
                    System.out.println("输入成功");
                }else{
                    System.out.println("输入错误");
                }
            count++;
            if(count == 4){
                System.out.println("就这？回家去种红薯吧");
                break;
            }
        }*/
    }
      //调整数组顺序使得奇数位于偶数之前。调整之后，不关心大小顺序
      /*  int[] arr = new int[]{1,2,3,4,5,6};
        int left = 2;int right = arr.length;
        while(left < right){
           if(right % 2 == 0){ //确保右边下标是偶数位
                right -= 1;
            }
           if(left % 2 == 0){ //这里保证左边下标是
                int tmp = arr[left-1];
                arr[left-1] = arr[right-1];
                arr[right-1] = tmp;
            }
            left += 2;
            right -= 2;
        }
        for (int i = 0; i < arr.length; i++) {
            System.out.print( arr[i] + " " );
        }
    }*///这一部分是复习课后作业的

    public static boolean sushu(int a) {
        boolean key = true;
        for (int i = 2; i < Math.sqrt(a); i++) {  //或者是 i * i < a
            if(a % i == 0){
                key = false;
            }
        }
        return key;
    }//打印 1 - 100 之间所有的素数
}
